This invention relates to an apparatus for controlling the display of an on-screen menu in a display device, and in particular, to an apparatus which may be programmed to alter the location of a cell, and the size, foreground color, and background color of an on-screen menu.
On-screen menus for televisions and displays are a relatively recent development. In one application, an on-screen menu is used to display the parameters of a monitor to facilitate adjustment of the parameters. FIG. 1 shows an on-screen menu 12 within the display 13 of a monitor 11. Display output 14 shown in the upper left hand corner of display 13 represents the output of a computer system connected to the monitor. On-screen menu area 12 appears on display 13 and overwrites display output 14 when a button (not shown) associated with monitor 11 is activated. The area of on-screen menu 12 is generally referred to as the background and the alphanumeric display 121 within the background is generally referred to as the foreground. In one application, the alphanumeric characters of the foreground are used to display the parameters of a monitor. By manipulating these parameters and a plurality of dials, the user may change the configuration of display output 14.
FIG. 2 is a schematic diagram of a typical circuit used to implement the on-screen menu of FIG. 1. An address counter 26 transmits an address signal to a display buffer 22 via a signal line 61. Display buffer 22 transmits a stored address value to the address input of a read-only memory (ROM) 23 via a data bus 21. ROM 23 transmits selected alphanumeric data in parallel to a shift register 24 via signal lines 31 in response to the address value from display buffer 22. In other words, ROM 23 is a character generator. Shift register 24 converts the alphanumeric data on signal lines 31 from parallel to serial form and then transmits the serial data to a cathode ray tube (not shown). Display buffer 22 generally is a Random Access Memory (RAM). Data bus 21 generally is an eight bit data bus.
One conventional approach uses the least significant bit (LSB) of data bus 21 as signal line for the on-screen menu attribute data. Attribute data include cell locations, and the size and color of on-screen menu background and foreground. Because the LSB is used in this manner, only the seven most significant bits may be used to address ROM 23. This means only 128 (2.sup.7) characters are available in such a conventional display system. Unfortunately, in commercial environments, 128 characters are not sufficient for complicated applications. This problem is exacerbated in applications in which two bits are required for attribute dam. In such situations, only 64 (2.sup.6) characters are available.
In order to implement the desired 256 characters, some conventional systems employ an additional ROM 25 to store attribute data. In such systems, all eight bits of data bus 21 may be used to select a character. ROM 25 is addressed by the address signal 61 and transmits stored attribute data on a signal line 51. However, the addition of ROM 25 unnecessarily increases the system's cost and complexity. This is especially true when the system is implemented in a programmable integrated circuit, such as, for example, an Application Specific Integrated Circuit (ASIC).
Another disadvantage of this type of system is the lack of flexibility with regard to the parameters of the on-screen menu. Because the data stored in ROM 25 is fixed after the mask programming process, the attributes of the on-screen menu are not alterable. This means that the display of the on-screen menu is not software programmable. If programming capability is desired for the system, a RAM may be used to replace ROM 25. However, because this would result in two RAMs being employed in the system, the required programming time may be longer and more complex than desired.